package com.findyou.jsp;

import jakarta.servlet.http.HttpServletRequest;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

/**
 * @Title: JspController
 * @Author 贾金博
 * @Package com.findyou.jsp
 * @Date 2024/3/3 17:36
 * @description: 快速返回一个jsp页面
 */

@Controller
@RequestMapping("jsp")
public class JspController {


    /**
     * TODO:快速查找视图
     *      1: 方法的返回值是字符串类型的
     *      2: 不要加 @ResponseBody 写的话 就直接返回给字符串给浏览器
     * @return
     */
    @GetMapping("index")
    public String index(HttpServletRequest request) {
        request.setAttribute("data", "hello jsp");
        return "index";
    }

    /**
     * 转发: 只能是项目下面的资源
     * 1:方法的返回值写成字符串
     * 2:不能添加responseBody 注解
     * 3:返回的字符串前 要加 forward: 这个是固定的
     * @return
     */
    @GetMapping("forward")
    public String forward() {
        return "forward:/jsp/index";
    }


    /**
     * 重定向: 这个可以是项目外的
     * 1:方法的返回值 写成字符串的格式
     * 2:不能添加responseBody注解
     * 3: 返回字符串前面redirect: /重定向的地址
     */

    @GetMapping("redirect")
    public String redirect() {
        System.out.println("JspController.redirect");
        return "redirect:/jsp/index";
    }


    /**
     * 重定向到百度
     * @return
     */
    @GetMapping("redirectBaidu")
    public String redirectBaidu() {
        System.out.println("JspController.redirect");
        return "redirect:http://www.baidu.com";
    }

}
